package com.smartalarmclock.Model;

import java.util.Set;

import android.content.Context;

public interface IRulesItem extends IReferencingMultipleDataEntity,	IReferencedDataEntity {

	/**
	 * @return the rules item's alarm clock
	 */
	public IAlarmClock GetAlarmClock();
	
	/**
	 * @return the rules item's auto response for the contacts in the rules item
	 */
	public IAutoResponse GetMatchingAutoResponse();
	
	/**
	 * @param context the context of the request
	 * @return a set of the rules item's time frames
	 */
	public Set<ITimeFrame> GetTimeFrames(Context context);
	
	/**
	 * Adds a time fame to the rules item
	 * @param context the context of the request
	 * @param timeFrame the time frame to add
	 */
	public void AddTimeFrame(Context context, ITimeFrame timeFrame);
	
	/**
	 * Removes a time frame from the rules item
	 * @param context the context of the request
	 * @param timeFrame the time frame to remove
	 */
	public void RemoveTimeFrame(Context context, ITimeFrame timeFrame);
}
